<!-- $Id$ -->
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns:p="urn:schemas-microsoft-com:office:powerpoint"
xmlns:oa="urn:schemas-microsoft-com:office:activation"
xmlns:st1="urn:schemas-microsoft-com:office:smarttags"
xmlns="http://www.w3.org/TR/REC-html40">

<head>
<meta http-equiv=Content-Type content="text/html; charset=us-ascii">
<meta name=ProgId content=Word.Document>
<meta name=Generator content="Microsoft Word 11">
<meta name=Originator content="Microsoft Word 11">
<link rel=File-List href="03_files/filelist.xml">
<link rel=Edit-Time-Data href="03_files/editdata.mso">
<!--[if !mso]>
<style>
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
</style>
<![endif]-->
<title>Getting Started</title>
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
 name="place"/>
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
 name="PlaceType"/>
<o:SmartTagType namespaceuri="urn:schemas-microsoft-com:office:smarttags"
 name="PlaceName"/>
<!--[if gte mso 9]><xml>
 <o:DocumentProperties>
  <o:Author>Abdullah Sowayan</o:Author>
  <o:LastAuthor>Abdullah Sowayan</o:LastAuthor>
  <o:Revision>13</o:Revision>
  <o:TotalTime>54</o:TotalTime>
  <o:Created>2006-10-09T22:26:00Z</o:Created>
  <o:LastSaved>2007-03-08T01:18:00Z</o:LastSaved>
  <o:Pages>1</o:Pages>
  <o:Words>2585</o:Words>
  <o:Characters>14741</o:Characters>
  <o:Company>Maritime Systems &amp; Sensors</o:Company>
  <o:Lines>122</o:Lines>
  <o:Paragraphs>34</o:Paragraphs>
  <o:CharactersWithSpaces>17292</o:CharactersWithSpaces>
  <o:Version>11.5606</o:Version>
 </o:DocumentProperties>
</xml><![endif]--><!--[if gte mso 9]><xml>
 <w:WordDocument>
  <w:ValidateAgainstSchemas/>
  <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
  <w:IgnoreMixedContent>false</w:IgnoreMixedContent>
  <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
  <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel>
 </w:WordDocument>
</xml><![endif]--><!--[if gte mso 9]><xml>
 <w:LatentStyles DefLockedState="false" LatentStyleCount="156">
 </w:LatentStyles>
</xml><![endif]--><!--[if !mso]><object
 classid="clsid:38481807-CA0E-42D2-BF39-B33AF135CC4D" id=ieooui></object>
<style>
st1\:*{behavior:url(#ieooui) }
</style>
<![endif]-->
<style>
<!--
 /* Style Definitions */
 p.MsoNormal, li.MsoNormal, div.MsoNormal
	{mso-style-parent:"";
	margin:0in;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:12.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";}
h3
	{mso-margin-top-alt:auto;
	margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	mso-pagination:widow-orphan;
	mso-outline-level:3;
	font-size:13.5pt;
	font-family:"Times New Roman";
	font-weight:bold;}
a:link, span.MsoHyperlink
	{color:#000FFF;
	text-decoration:underline;
	text-underline:single;}
a:visited, span.MsoHyperlinkFollowed
	{color:#FF0F0F;
	text-decoration:underline;
	text-underline:single;}
p
	{mso-margin-top-alt:auto;
	margin-right:0in;
	mso-margin-bottom-alt:auto;
	margin-left:0in;
	mso-pagination:widow-orphan;
	font-size:12.0pt;
	font-family:"Times New Roman";
	mso-fareast-font-family:"Times New Roman";}
address
	{margin:0in;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:12.0pt;
	font-family:"Times New Roman";
	font-style:italic;}
code
	{font-family:"Courier New";
	mso-ascii-font-family:"Courier New";
	mso-fareast-font-family:"Times New Roman";
	mso-hansi-font-family:"Courier New";
	mso-bidi-font-family:"Courier New";}
kbd
	{font-family:"Courier New";
	mso-ascii-font-family:"Courier New";
	mso-fareast-font-family:"Times New Roman";
	mso-hansi-font-family:"Courier New";
	mso-bidi-font-family:"Courier New";}
pre
	{margin:0in;
	margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt;
	font-size:10.0pt;
	font-family:"Courier New";
	mso-fareast-font-family:"Times New Roman";}
@page Section1
	{size:8.5in 11.0in;
	margin:1.0in 1.25in 1.0in 1.25in;
	mso-header-margin:.5in;
	mso-footer-margin:.5in;
	mso-paper-source:0;}
div.Section1
	{page:Section1;}
 /* List Definitions */
 @list l0
	{mso-list-id:154345203;
	mso-list-template-ids:-289649766;}
@list l0:level1
	{mso-level-tab-stop:.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level2
	{mso-level-tab-stop:1.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level3
	{mso-level-tab-stop:1.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level4
	{mso-level-tab-stop:2.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level5
	{mso-level-tab-stop:2.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level6
	{mso-level-tab-stop:3.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level7
	{mso-level-tab-stop:3.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level8
	{mso-level-tab-stop:4.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l0:level9
	{mso-level-tab-stop:4.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1
	{mso-list-id:201526982;
	mso-list-template-ids:-336678638;}
@list l1:level1
	{mso-level-tab-stop:.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level2
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:1.0in;
	mso-level-number-position:left;
	text-indent:-.25in;
	mso-ansi-font-size:10.0pt;
	font-family:"Courier New";
	mso-bidi-font-family:"Times New Roman";}
@list l1:level3
	{mso-level-tab-stop:1.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level4
	{mso-level-tab-stop:2.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level5
	{mso-level-tab-stop:2.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level6
	{mso-level-tab-stop:3.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level7
	{mso-level-tab-stop:3.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level8
	{mso-level-tab-stop:4.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l1:level9
	{mso-level-tab-stop:4.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l2
	{mso-list-id:777020325;
	mso-list-template-ids:-483995422;}
@list l2:level1
	{mso-level-number-format:bullet;
	mso-level-text:\F0B7;
	mso-level-tab-stop:.5in;
	mso-level-number-position:left;
	text-indent:-.25in;
	mso-ansi-font-size:10.0pt;
	font-family:Symbol;}
@list l2:level2
	{mso-level-tab-stop:1.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l2:level3
	{mso-level-tab-stop:1.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l2:level4
	{mso-level-tab-stop:2.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l2:level5
	{mso-level-tab-stop:2.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l2:level6
	{mso-level-tab-stop:3.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l2:level7
	{mso-level-tab-stop:3.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l2:level8
	{mso-level-tab-stop:4.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l2:level9
	{mso-level-tab-stop:4.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l3
	{mso-list-id:907959882;
	mso-list-template-ids:323885252;}
@list l3:level1
	{mso-level-tab-stop:.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l3:level2
	{mso-level-tab-stop:1.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l3:level3
	{mso-level-tab-stop:1.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l3:level4
	{mso-level-tab-stop:2.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l3:level5
	{mso-level-tab-stop:2.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l3:level6
	{mso-level-tab-stop:3.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l3:level7
	{mso-level-tab-stop:3.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l3:level8
	{mso-level-tab-stop:4.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l3:level9
	{mso-level-tab-stop:4.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l4
	{mso-list-id:1065254837;
	mso-list-template-ids:1089662206;}
@list l4:level1
	{mso-level-tab-stop:.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l4:level2
	{mso-level-tab-stop:1.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l4:level3
	{mso-level-tab-stop:1.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l4:level4
	{mso-level-tab-stop:2.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l4:level5
	{mso-level-tab-stop:2.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l4:level6
	{mso-level-tab-stop:3.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l4:level7
	{mso-level-tab-stop:3.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l4:level8
	{mso-level-tab-stop:4.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l4:level9
	{mso-level-tab-stop:4.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l5
	{mso-list-id:1084494006;
	mso-list-template-ids:-1504120978;}
@list l5:level1
	{mso-level-tab-stop:.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l5:level2
	{mso-level-tab-stop:1.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l5:level3
	{mso-level-tab-stop:1.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l5:level4
	{mso-level-tab-stop:2.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l5:level5
	{mso-level-tab-stop:2.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l5:level6
	{mso-level-tab-stop:3.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l5:level7
	{mso-level-tab-stop:3.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l5:level8
	{mso-level-tab-stop:4.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l5:level9
	{mso-level-tab-stop:4.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l6
	{mso-list-id:1153565371;
	mso-list-template-ids:-169696680;}
@list l6:level1
	{mso-level-tab-stop:.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l6:level2
	{mso-level-tab-stop:1.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l6:level3
	{mso-level-tab-stop:1.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l6:level4
	{mso-level-tab-stop:2.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l6:level5
	{mso-level-tab-stop:2.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l6:level6
	{mso-level-tab-stop:3.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l6:level7
	{mso-level-tab-stop:3.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l6:level8
	{mso-level-tab-stop:4.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l6:level9
	{mso-level-tab-stop:4.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l7
	{mso-list-id:1832599161;
	mso-list-template-ids:-966728002;}
@list l7:level1
	{mso-level-tab-stop:.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l7:level2
	{mso-level-number-format:bullet;
	mso-level-text:o;
	mso-level-tab-stop:1.0in;
	mso-level-number-position:left;
	text-indent:-.25in;
	mso-ansi-font-size:10.0pt;
	font-family:"Courier New";
	mso-bidi-font-family:"Times New Roman";}
@list l7:level3
	{mso-level-tab-stop:1.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l7:level4
	{mso-level-tab-stop:2.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l7:level5
	{mso-level-tab-stop:2.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l7:level6
	{mso-level-tab-stop:3.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l7:level7
	{mso-level-tab-stop:3.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l7:level8
	{mso-level-tab-stop:4.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l7:level9
	{mso-level-tab-stop:4.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l8
	{mso-list-id:1956401533;
	mso-list-template-ids:-909756440;}
@list l8:level1
	{mso-level-tab-stop:.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l8:level2
	{mso-level-tab-stop:1.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l8:level3
	{mso-level-tab-stop:1.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l8:level4
	{mso-level-tab-stop:2.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l8:level5
	{mso-level-tab-stop:2.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l8:level6
	{mso-level-tab-stop:3.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l8:level7
	{mso-level-tab-stop:3.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l8:level8
	{mso-level-tab-stop:4.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l8:level9
	{mso-level-tab-stop:4.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l9
	{mso-list-id:2012949130;
	mso-list-type:hybrid;
	mso-list-template-ids:990837084 67698703 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;}
@list l9:level1
	{mso-level-tab-stop:39.0pt;
	mso-level-number-position:left;
	margin-left:39.0pt;
	text-indent:-.25in;}
@list l9:level2
	{mso-level-tab-stop:1.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l9:level3
	{mso-level-tab-stop:1.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l9:level4
	{mso-level-tab-stop:2.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l9:level5
	{mso-level-tab-stop:2.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l9:level6
	{mso-level-tab-stop:3.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l9:level7
	{mso-level-tab-stop:3.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l9:level8
	{mso-level-tab-stop:4.0in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l9:level9
	{mso-level-tab-stop:4.5in;
	mso-level-number-position:left;
	text-indent:-.25in;}
@list l8:level1 lfo5
	{mso-level-start-at:4;}
@list l1:level2 lfo7
	{mso-level-number-format:arabic;
	mso-level-numbering:continue;
	mso-level-text:"%2\.";
	mso-level-tab-stop:none;
	mso-level-number-position:left;
	margin-left:0in;
	text-indent:0in;
	mso-ansi-font-size:10.0pt;
	font-family:"Courier New";
	mso-bidi-font-family:"Times New Roman";}
ol
	{margin-bottom:0in;}
ul
	{margin-bottom:0in;}
-->
</style>
<!--[if gte mso 10]>
<style>
 /* Style Definitions */
 table.MsoNormalTable
	{mso-style-name:"Table Normal";
	mso-tstyle-rowband-size:0;
	mso-tstyle-colband-size:0;
	mso-style-noshow:yes;
	mso-style-parent:"";
	mso-padding-alt:0in 5.4pt 0in 5.4pt;
	mso-para-margin:0in;
	mso-para-margin-bottom:.0001pt;
	mso-pagination:widow-orphan;
	font-size:10.0pt;
	font-family:"Times New Roman";
	mso-ansi-language:#0400;
	mso-fareast-language:#0400;
	mso-bidi-language:#0400;}
</style>
<![endif]--><!-- $Id$ --><!--[if gte mso 9]><xml>
 <o:shapedefaults v:ext="edit" spidmax="6146"/>
</xml><![endif]--><!--[if gte mso 9]><xml>
 <o:shapelayout v:ext="edit">
  <o:idmap v:ext="edit" data="1"/>
 </o:shapelayout></xml><![endif]-->
</head>

<body bgcolor=white lang=EN-US link="#000FFF" vlink="#FF0F0F" style='tab-interval:
.5in'>

<div class=Section1>

<h3 align=center style='text-align:center'><span style='color:black'>Step 3:
Package your components<o:p></o:p></span></h3>

<h3 align=center style='text-align:center'><span style='color:black'><img
width=572 height=358 id="_x0000_i1025" src="images/step3.jpg"><o:p></o:p></span></h3>

<p class=MsoNormal><b><span style='color:red'><o:p>&nbsp;</o:p></span></b></p>

<p class=MsoNormal><b>Brief Introduction to CosMIC:<o:p></o:p></b></p>

<p class=MsoNormal style='mso-layout-grid-align:none;text-autospace:none'>The
Component Synthesis using Model Integrated Computing (CoSMIC) project is a MDA
toolset being developed by the Institute for Software Integrated Systems (ISIS)
at <st1:place w:st="on"><st1:PlaceName w:st="on">Vanderbilt</st1:PlaceName> <st1:PlaceType
 w:st="on">University</st1:PlaceType></st1:place> to:</p>

<p class=MsoNormal style='margin-left:39.0pt;text-indent:-.25in;mso-list:l9 level1 lfo1;
tab-stops:list 39.0pt;mso-layout-grid-align:none;text-autospace:none'><![if !supportLists]><span
style='mso-list:Ignore'>1.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]><i>Model and</i> <i>analyze </i>distributed real-time
and embedded application functionality and QoS requirements.</p>

<p class=MsoNormal style='margin-left:39.0pt;text-indent:-.25in;mso-list:l9 level1 lfo1;
tab-stops:list 39.0pt;mso-layout-grid-align:none;text-autospace:none'><![if !supportLists]><span
style='mso-list:Ignore'>2.<span style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp;&nbsp;
</span></span><![endif]><i>Synthesize</i> CCM-specific deployment metadata
required to deliver end-to-end QoS to DRE applications.</p>

<p class=MsoNormal style='mso-layout-grid-align:none;text-autospace:none'><o:p>&nbsp;</o:p></p>

<p class=MsoNormal style='mso-layout-grid-align:none;text-autospace:none'>The
CoSMIC toolsuite provides modeling of DRE systems, their QoS requirements, and
QoS adaptation policies used for DRE application QoS management. The component
behavior, their interactions, and QoS requirements are modeled using a domain
specific modeling language that adheres to <span style='color:black'>the <a
href="http://www.omg.org/cgi-bin/doc?ptc/2003-07-08">OMG Deployment &amp;
Configuration (D&amp;C) specification (ptc/2003-07-08)</a></span>. CoSMIC
enables modeling the standards-based CCM components. </p>

<p class=MsoNormal style='mso-layout-grid-align:none;text-autospace:none'><o:p>&nbsp;</o:p></p>

<p class=MsoNormal style='mso-layout-grid-align:none;text-autospace:none'>Hand-writing
the required XML descriptors to configure our components is tedious and error
prone. We therefore utilize CosMIC (we specifically use a subset of CosMIC
called PICML, which stands for Platform-Independent Component Modeling
Language) to generate the bulk of descriptors for us.</p>

<p class=MsoNormal style='mso-layout-grid-align:none;text-autospace:none'><o:p>&nbsp;</o:p></p>

<p class=MsoNormal style='mso-layout-grid-align:none;text-autospace:none'>For
more information on CosMIC, please refer to the following article:</p>

<p class=MsoNormal style='mso-layout-grid-align:none;text-autospace:none'><span
style='mso-bidi-font-weight:bold'><a
href="http://www.cs.wustl.edu/~schmidt/PDF/mamad2003.pdf">CoSMIC: An MDA
Generative Tool for Distributed Real-time and Embedded Applications</a>.<o:p></o:p></span></p>

<p class=MsoNormal style='mso-layout-grid-align:none;text-autospace:none'><span
style='mso-bidi-font-weight:bold'><o:p>&nbsp;</o:p></span></p>

<div class=MsoNormal align=center style='text-align:center'><span
style='color:black'>

<hr size=2 width="100%" align=center>

</span></div>

<p class=MsoNormal style='mso-layout-grid-align:none;text-autospace:none'><span
style='mso-bidi-font-weight:bold'><o:p>&nbsp;</o:p></span></p>

<p class=MsoNormal><b><span style='color:black'>Importing IDL to PICML</span></b><span
style='color:black'><br>
<br>
&nbsp;&nbsp; To quick start our Stock Quoter modeling process in GME, CoSMIC
introduces <em>idl_to_picml</em> , which is an executable program that imports
the IDL files you just created into PICML.<o:p></o:p></span></p>

<ol start=1 type=1>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l3 level1 lfo2;tab-stops:list .5in'>Make sure <code><span
     style='font-size:10.0pt'>%COSMIC_ROOT%\bin</span></code> is included in
     the PATH variable, e.g., c:\Program Files\ISIS\CoSMIC\bin.<o:p></o:p></li>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l3 level1 lfo2;tab-stops:list .5in'>Open a command prompt,
     run VCVARS32.BAT from the MSVC .NET folder if you haven't done so. It will
     set the environment for using Microsoft Visual Studio .NET tools so that <i>idl_to_picml</i>
     works properly.<br>
     in my machine, VCVARS32.bat is in C:\Program Files\Microsoft Visual Studio
     .NET 2003\Vc7\bin<o:p></o:p></li>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l3 level1 lfo2;tab-stops:list .5in'>In the same command
     prompt, change directory to <code><span style='font-size:10.0pt'>MyQuoter\</span></code>,
     and type the following command:<br>
     &nbsp;&nbsp; &gt; <kbd><span style='font-size:10.0pt'>idl_to_picml -x
     MyQuoter -r . -I .\Stock_Base</span></kbd><br>
     &nbsp;&nbsp; (if the above command does not work, you may also try this<br>
     &nbsp;&nbsp; &gt;<kbd><span style='font-size:10.0pt'>idl_to_picml -x
     MyQuoter -r .&nbsp;-I .\Stock_Base -I %TAO_ROOT% -I %TAO_ROOT%\orbsvcs -I
     %CIAO_ROOT%\ciao)</span></kbd><br>
     &nbsp; <em>idl_to_picml</em> will parse your IDL files and generated a <code><span
     style='font-size:10.0pt'>MyQuoter.xme</span></code> file in the <code><span
     style='font-size:10.0pt'>MyQuoter</span></code> directory. Note that if -x
     option is not used, the default xme file name will be <code><span
     style='font-size:10.0pt'>PICML_default_xme_file.xme.</span></code><br>
     4. Start GME, select <strong>File-&gt;Import xml..</strong>, and choose
     the xme file just generated. You should be able to see an imported PICML
     model similar to the one shown in Figure 2.<o:p></o:p></li>
</ol>

<p class=MsoNormal><span style='color:black'><o:p>&nbsp;</o:p></span></p>

<p class=MsoNormal align=center style='text-align:center'><span
style='color:black'><img border=0 width=781 height=636 id="_x0000_i1027"
src="Images/fig2.jpg"><br>
<br>
Figure 2<o:p></o:p></span></p>

<p><span style='color:black'>&nbsp; In the Browser of the generated model, the <em>PredefinedTypes</em>
folder contains a bunch of atomic datatype elements that will be referenced by
other modeling parts later. You don't have to worry about them for now. The
models in <em>InterfaceDefinitions</em> folder are the PICML representations
ofthe IDL files you just imported. Double-click to open <em>Broker</em>, it
will show you a white, document-like entity which represents a
&lt;&lt;FileRef&gt;&gt; instance and a yellow box-shaped entity representing a
&lt;&lt;Package&gt;&gt; instance. Their equivalent representations in IDL files
are &quot;#include&quot; and &quot;module&quot; respectively. Figure 3 gives
you a clear view of GME representation of all the 3 idl files created. We will
cover the other folders in the next section.<o:p></o:p></span></p>

<p class=MsoNormal align=center style='margin-bottom:12.0pt;text-align:center'><span
style='color:black'><img border=0 width=223 height=336 id="_x0000_i1028"
src="Images/fig3.jpg"><br>
<br>
Figure 3<o:p></o:p></span></p>

<p class=MsoNormal style='margin-bottom:12.0pt'><span style='color:black'>Now
we are ready to model the rest of the Stock Quoter systems.<br>
<br style='mso-special-character:line-break'>
<![if !supportLineBreakNewLine]><br style='mso-special-character:line-break'>
<![endif]><o:p></o:p></span></p>

<div class=MsoNormal align=center style='text-align:center'><span
style='color:black'>

<hr size=2 width="100%" align=center>

</span></div>

<h3>Building Stock Quoter system in PICML<span style='color:black'><o:p></o:p></span></h3>

<p><span style='color:black'>This section describes modeling the Quoter
application using PICML. If you have trouble producing a functioning model from
this tutorial, please see the, <a href="Model/Quoter.xme">pre-built Quoter
model</a> which is provided for your reference. This model contains all
elements created as part of this tutorial.<o:p></o:p></span></p>

<div>

<p class=MsoNormal><strong><span style='color:black'>Note:</span></strong><span
style='color:black'> To import an XML file in GME, select <em>File-&gt;Import
XML..</em> from GME and choose your XML model<o:p></o:p></span></p>

</div>

<p><span style='color:black'>The PICML paradigm is designed for the <a
href="http://www.omg.org/cgi-bin/doc?ptc/2003-07-08">OMG Deployment &amp;
Configuration (D&amp;C) specification (ptc/2003-07-08)</a>, so the modeling process
is straightforward if you are familiar with the specification. Please see the <a
href="../../releasenotes/dance.html">DAnCE project</a> for more
information.&nbsp;For those who hate specification (including me, :-)), an <a
href="http://www.cs.wustl.edu/%7Eschmidt/PDF/DAnCE.pdf">overview of D&amp;C</a>
and as well as a <a
href="http://www.cs.wustl.edu/%7Eschmidt/OMG-CCM-Tutorial.ppt">tutorial of
D&amp;C and CCM</a> can help to reduce the learning curve. In addition, it is
also helpful to read through Chapter 32 of TAO's Developer's Guide 1.4a (CIAO
and CCM) which thoroughly describes the various descriptors required for a
component (*.iad, *.ccd, *.cid, etc). <o:p></o:p></span></p>

<h3><span style='color:black'>Table of Contents<o:p></o:p></span></h3>

<ul type=disc>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l2 level1 lfo3;tab-stops:list .5in'><a href="#1">ImplementationArtifacts</a><o:p></o:p></li>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l2 level1 lfo3;tab-stops:list .5in'><a href="#2">ComponentImplementations</a><o:p></o:p></li>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l2 level1 lfo3;tab-stops:list .5in'><a href="#3">ComponentPackages</a><o:p></o:p></li>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l2 level1 lfo3;tab-stops:list .5in'><a href="#4">PackageConfiguration</a><o:p></o:p></li>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l2 level1 lfo3;tab-stops:list .5in'><a href="#5">TopLevelPackage</a><o:p></o:p></li>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l2 level1 lfo3;tab-stops:list .5in'><a href="#6">Targets</a><o:p></o:p></li>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l2 level1 lfo3;tab-stops:list .5in'><a href="#7">DeploymentPlan</a><o:p></o:p></li>
</ul>

<div class=MsoNormal align=center style='text-align:center'><span
style='color:black'>

<hr size=2 width="100%" align=center>

</span></div>

<p><span style='color:black'>The complete PICML Quoter model consists of
modeling elements distributed across various folders. If you used <em>idl_to_picml</em>
to generate the initial model, you will see that it has created all these
folders and some of the tedious boilerplate modeling for us. The rest of the
section will explain the purpose of each folder as well as the modeling
entities contained in these folders. We will also show how to model some of the
folders that have to be done by hand.<o:p></o:p></span></p>

<p><b><span style='font-variant:small-caps;color:red;background:silver;
mso-highlight:silver'>Important:</span></b><span style='color:black;background:
silver;mso-highlight:silver'> The interpreters that generate deployment
artifacts expect very strict constraints in the model. When you finish your
model, and any time you wish to generate anything, it is a good idea to check
constraints by clicking on <em>File-&gt;Check-&gt;Check All</em> in GME. This
will help you find many logic errors in your model.</span><span
style='color:black'><o:p></o:p></span></p>

<h3><span style='color:black'>ImplementationArtifacts<o:p></o:p></span></h3>

<p><span style='color:black'>This folder contains implementation artifacts
associated with components. <em>idl_to_picml</em> has created these artifacts
for us, with their dependency relationships correctly captured. Figure 4 shows
the Implementation Artifacts for <em>Broker</em>.<o:p></o:p></span></p>

<p class=MsoNormal align=center style='margin-bottom:12.0pt;text-align:center'><span
style='color:black'><img border=0 width=891 height=552 id="_x0000_i1031"
src="Images/fig4.jpg"><br>
Figure 4.<o:p></o:p></span></p>

<div class=MsoNormal align=center style='text-align:center'><a name=1></a><span
style='color:black'>

<hr size=2 width="100%" align=center>

</span></div>

<h3><span style='color:black'>ComponentImplementation<a name=2></a><o:p></o:p></span></h3>

<p><span style='color:black'>This folder contains models that describe the implementations
of component interfaces. In the Quoter example, we will have two monolithic
component implementations - named <em>StockDistributorImplementation</em> and <em>StockBrokerImplementation</em>
- and an assembly component implementation named <em>StockQuoter</em>, which is
an assembly of <em>StockDistributorImplementation</em> and <em>StockBrokerImplementaion</em>.
<em>idl_to_picml</em> has created the monolithic component implementations for
us, as shown in figure 5 for example, but we have to specify the connections
between them in order to construct a Quoter system.<o:p></o:p></span></p>

<p class=MsoNormal align=center style='text-align:center'><span
style='color:black'><img border=0 width=922 height=639 id="_x0000_i1033"
src="Images/fig5.jpg"><br>
Figure 5<o:p></o:p></span></p>

<p><span style='color:black'>Assembly components provide a boundary for the composition
of monolithic components and even other assemblies. Assembly components do not
provide actual implementations for their interface, it is a virtual component
that delegates its ports and attributes to one or more of the entities it
contains. There are slight differences between modeling an assembly and
modeling a monolithic component. Since the assembly is a virtual component, it
is not necessary to model a </span><code><span style='font-size:10.0pt;
color:black'>MonolithicImplementation</span></code><span style='color:black'>.
Instead, <em>instances</em> of other components are placed within the assembly
and connected. Let's try to assemble the <em>StockQuoter</em>.<o:p></o:p></span></p>

<ol start=1 type=1>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l0 level1 lfo4;tab-stops:list .5in'>Right click the <em>ComponentImplementations</em>
     folder, choose <strong>Insert Model-&gt;ComponentImplementationContainer</strong>,
     rename it as &quot;StockQuoterImplementation&quot; in the Attribute Panel.
     Double click to open it.<o:p></o:p></li>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l0 level1 lfo4;tab-stops:list .5in'>From the Part Browser,
     drag a &lt;&lt;ComponentAssembly&gt;&gt; to the modeling window, name it
     &quot;StockQuoter&quot;. Double click to open it.<o:p></o:p></li>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l0 level1 lfo4;tab-stops:list .5in'>Now we will create two
     instances for interfaces <em>StockBroker</em> and <em>StockDistributor</em>.
     To do that, expand the folder <em><span style='font-size:10.0pt;
     font-family:"Courier New"'>InterfaceDefinitions</span></em>, then expand
     the <em><span style='font-size:10.0pt;font-family:"Courier New"'>InterfaceDefinitions/</span></em>
     <em>Broker</em>, then <em><span style='font-size:10.0pt;font-family:"Courier New"'>InterfaceDefinitions/</span></em>
     <em>Broker/ Stock</em> until the interface definition of <em>StockBroker</em>
     shows. While expanding the tree, always keep the &quot;StockQuoter&quot;
     &lt;&lt;ComponentAssembly&gt;&gt; window open. Then drag <code><span
     style='font-size:10.0pt'>MyQuoter/InterfaceDefinitions/Broker/Stock/StockBroker</span></code>
     in the browser to the &quot;StockQuoter&quot;
     &lt;&lt;ComponentAssembly&gt;&gt; window while pressing ALT key. Repeat
     the same steps for <code><span style='font-size:10.0pt'>MyQuoter/InterfaceDefinitions/Distributor/Stock/StockDistributor</span></code>,
     and you will see two instances of component interfaces have been created
     as shown in Figure 6 (the black line in the figure only indicates
     .mapping)<o:p></o:p></li>
</ol>

<p class=MsoNormal><span style='color:black'><o:p>&nbsp;</o:p></span></p>

<p class=MsoNormal align=center style='text-align:center'><span
style='color:black'><img border=0 width=972 height=714 id="_x0000_i1034"
src="Images/fig6.jpg"><br>
<br>
Figure 6<o:p></o:p></span></p>

<ol start=4 type=1>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l8 level1 lfo5;tab-stops:list .5in'>Create an
     &lt;&lt;PublishConnector&gt;&gt;.<o:p></o:p></li>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l8 level1 lfo5;tab-stops:list .5in'>Now assemble the
     components together according to <a href="Images/fig1.jpg">Figure 1</a>(make
     sure you change to connect mode <img border=0 width=32 height=32
     id="_x0000_i1035" src="Icons/AddConnMode.gif">) and the resulting assembly
     model should look like Figure 7. Note that to create connections between
     StockDistributor.notify_out and StockBroker.notify_in, you will need the
     intermediate connector &lt;&lt;PublishConnector&gt;&gt;.<o:p></o:p></li>
</ol>

<p class=MsoNormal align=center style='text-align:center'><span
style='color:black'><img border=0 width=724 height=402 id="_x0000_i1036"
src="Images/fig7.jpg"><!-- hhmts end -->&gt;<br>
<br>
Figure 7<o:p></o:p></span></p>

<div class=MsoNormal align=center style='text-align:center'><span
style='color:black'>

<hr size=2 width="100%" align=center>

</span></div>

<h3><a name=3></a><span style='color:black'>ComponentPackage<o:p></o:p></span></h3>

<p class=MsoNormal><span style='color:black'>This folder contains deployable
component packages. Every instance in an assembly should have a corresponding
monolithic implementation and packaged in a ComponentPackagebe To create a
package for <em>StockBroker</em>.instance<o:p></o:p></span></p>

<ol start=1 type=1>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l1 level1 lfo6;tab-stops:list .5in'>Right click folder <em>ComponentPackage</em>s
     , insert a &lt;&lt;PackageContainer&gt;&gt;, name it &quot;Broker&quot;;
     Double click to open it.<o:p></o:p></li>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l1 level1 lfo6;tab-stops:list .5in'>From the PartBrowser,
     add the following:<o:p></o:p></li>
 <ul type=circle>
  <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
      auto;mso-list:l1 level2 lfo6;tab-stops:list 1.0in'>a &lt;&lt;ComponentPackage&gt;&gt;
      named &quot;Broker&quot;;<o:p></o:p></li>
  <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
      auto;mso-list:l1 level2 lfo6;tab-stops:list 1.0in'>a
      &lt;&lt;ComponentImplementationReference&gt;&gt; named
      &quot;Broker&quot;;<o:p></o:p></li>
  <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
      auto;mso-list:l1 level2 lfo6;tab-stops:list 1.0in'>a
      &lt;&lt;ComponentRef&gt;&gt; named &quot;Broker&quot;;<o:p></o:p></li>
 </ul>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l1 level1 lfo6;tab-stops:list .5in'>Refer the
     &lt;&lt;ComponentImplementationReference&gt;&gt; <em>Broker</em> to <code><span
     style='font-size:10.0pt'>MyQuoter/ComponentImplementations/StockBroker</span></code>Implementation/StockBrokerMonolithicImpl.
     Refer the &lt;&lt;ComponentRef&gt;&gt; <em>Broker</em> to <code><span
     style='font-size:10.0pt'>MyQuoter/InterfaceDefinitions/Broker/Stock/StockBroker</span></code>.
     To create a reference in GME, simply drag the tree node in the Browser
     &quot;into&quot; the reference model. For example, you should drag the
     tree node <code><span style='font-size:10.0pt'>MyQuoter/ComponentImplementations/StockBroker</span></code>Implementation/StockBrokerMonolithicImpl
     into &lt;&lt;ComponentImplementationReference&gt;&gt; <em>Broker.</em>
     Check GME manual(tutorials) for more information.<o:p></o:p></li>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l1 level1 lfo6;tab-stops:list .5in'>Switch to Connect Mode and
     create two connections according to the following relationship.<o:p></o:p></li>
 <ul type=circle>
  <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
      auto;mso-list:l1 level2 lfo6;tab-stops:list 1.0in'>&lt;&lt;ComponentImplementationReference&gt;&gt;
      <em>Broker</em> implements &lt;&lt;ComponentPackage&gt;&gt; <em>Broker</em>;<o:p></o:p></li>
  <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
      auto;mso-list:l1 level2 lfo6;tab-stops:list 1.0in'>&lt;&lt;ComponentPackage&gt;&gt;
      <em>Broker</em> realizes &lt;&lt;ComponentRef&gt;&gt; <em>Broker</em>.<o:p></o:p></li>
 </ul>
</ol>

<p class=MsoNormal style='mso-margin-top-alt:auto;margin-bottom:12.0pt;
margin-left:.5in'><span style='color:black'><br>
<br>
&nbsp;&nbsp;&nbsp;&nbsp; The model you built should resemble Figure 8.<o:p></o:p></span></p>

<p class=MsoNormal align=center style='mso-margin-top-alt:auto;margin-bottom:
12.0pt;margin-left:.5in;text-align:center'><span style='color:black'><img
border=0 width=675 height=497 id="_x0000_i1038" src="Images/fig8.jpg"><!-- hhmts start -->&gt;<br>
<br>
Figure 8<o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:.5in'><span style='color:black'>Now create a
ComponentPackage/StockDistributor following the same steps. <o:p></o:p></span></p>

<ol start=5 type=1>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l1 level1 lfo6;tab-stops:list .5in;list-style-position:outside'><br>
     We will also need to create a package for the assembly component
     StockQuoter. Remember assembly component is a virtual component, it does
     not &quot;realize&quot; a certain interface, so different from the Broker
     and Distributor packages, the StockQuoter does not need a
     &lt;&lt;ComponentRef&gt;&gt;. To create this model: <o:p></o:p></li>
</ol>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:.5in;text-indent:-.25in;mso-list:l1 level2 lfo7'><![if !supportLists]><span
style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:"Courier New";
mso-fareast-font-family:"Courier New";color:black'><span style='mso-list:Ignore'>1.<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp; </span></span></span><![endif]><span
style='color:black'>Insert a &lt;&lt;ComponentPackage&gt;&gt; named
&quot;StockQuoter&quot;<o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:1.0in;text-indent:-.25in;mso-list:l1 level2 lfo7'><![if !supportLists]><span
style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:"Courier New";
mso-fareast-font-family:"Courier New";color:black'><span style='mso-list:Ignore'>2.<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp; </span></span></span><![endif]><span
style='color:black'>Add a &lt;&lt;ComponentImplementationReference&gt;&gt;
named &quot;StockQuoter&quot;, refer it to MyQuoter</span><code><span
style='font-size:10.0pt;color:black'>/ComponentImplementations/StockQuoter/StockQuoter</span></code><span
style='color:black'><o:p></o:p></span></p>

<p class=MsoNormal style='mso-margin-top-alt:auto;mso-margin-bottom-alt:auto;
margin-left:1.0in;text-indent:-.25in;mso-list:l1 level2 lfo7'><![if !supportLists]><span
style='font-size:10.0pt;mso-bidi-font-size:12.0pt;font-family:"Courier New";
mso-fareast-font-family:"Courier New";color:black'><span style='mso-list:Ignore'>3.<span
style='font:7.0pt "Times New Roman"'>&nbsp;&nbsp;&nbsp; </span></span></span><![endif]><span
style='color:black'>Switch to connect mode and connect
&lt;&lt;ComponentImplementationReference&gt;&gt; StockQuoter with
&lt;&lt;ComponentPackage&gt;&gt; StockQuoter, as in Figure 9.<o:p></o:p></span></p>

<p class=MsoNormal align=center style='margin-bottom:12.0pt;text-align:center'><span
style='color:black'><img border=0 width=549 height=354 id="_x0000_i1039"
src="Images/fig9.jpg"><!-- Created: Sat Nov 27 15:25:06 CST 1999 --><!-- hhmts start -->&gt;<br>
<br>
Figure 9<o:p></o:p></span></p>

<div class=MsoNormal align=center style='text-align:center'><span
style='color:black'>

<hr size=2 width="100%" align=center>

</span></div>

<h3><a name=4></a><span style='color:black'>PackageConfiguration<o:p></o:p></span></h3>

<p class=MsoNormal><span style='color:black'>This folder contains just one
model capturing specific configuration of Component packages.<o:p></o:p></span></p>

<ol start=1 type=1>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l6 level1 lfo8;tab-stops:list .5in'>In the folder <em>PackageConfiguratio</em>n,
     and create a &lt;&lt;PackageConfigurationContainer&gt;&gt;, name it
     &quot;Default&quot;, click to open it.<o:p></o:p></li>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l6 level1 lfo8;tab-stops:list .5in'>Add a
     &lt;&lt;PackageConfiguration&gt;&gt; named &quot;default&quot; and a
     &lt;&lt;ComponentPackageReference&gt;&gt;, name it
     &quot;StockQuoter&quot;, connect &quot;Default&quot; to
     &quot;StockQuoter&quot;<o:p></o:p></li>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l6 level1 lfo8;tab-stops:list .5in'>Refer
     &lt;&lt;ComponentPackageReference&gt;&gt; StockQuoter to
     &lt;&lt;ComponentPackage&gt;&gt; <code><span style='font-size:10.0pt'>MyQuoter/ComponentPackage/StockQuoter/StockQuoter</span></code><span
     style='font-size:10.0pt;font-family:"Courier New"'><br>
     <code>(Not &lt;&lt;ComponentImplementationReference&gt;&gt;</code></span> <code><span
     style='font-size:10.0pt'>MyQuoter/ComponentPackage/StockQuoter/StockQuoter!)&nbsp;</span></code><o:p></o:p></li>
</ol>

<p class=MsoNormal><span style='color:black'><o:p>&nbsp;</o:p></span></p>

<div class=MsoNormal align=center style='text-align:center'><span
style='color:black'>

<hr size=2 width="100%" align=center>

</span></div>

<h3><a name=5></a><span style='color:black'>ToplevelPackage<o:p></o:p></span></h3>

<p class=MsoNormal><span style='color:black'>This folder contains one model
capturing information about the top-level element that will be fed to the
application.<o:p></o:p></span></p>

<ol start=1 type=1>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l4 level1 lfo9;tab-stops:list .5in'>In the folder <em>ToplevelPackage</em>,
     and create a &lt;&lt;ToplevelPackageContainer&gt;&gt;, name it
     &quot;Default&quot;, double click to open it.<o:p></o:p></li>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l4 level1 lfo9;tab-stops:list .5in'>Add a
     &lt;&lt;ToplevelPackage&gt;&gt; named &quot;ToplevelPackage&quot; and a
     &lt;&lt;PackageConfigurationReference&gt;&gt;, name it
     &quot;Default&quot;, connect &quot;ToplevelPackage&quot; to
     &quot;Default&quot;<o:p></o:p></li>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l4 level1 lfo9;tab-stops:list .5in'>Refer
     &quot;Default&quot; to My<code><span style='font-size:10.0pt'>Quoter/PackageConfiguration/Default/Default</span></code><o:p></o:p></li>
</ol>

<p class=MsoNormal><span style='color:black'><o:p>&nbsp;</o:p></span></p>

<div class=MsoNormal align=center style='text-align:center'><span
style='color:black'>

<hr size=2 width="100%" align=center>

</span></div>

<h3><a name=6></a><span style='color:black'>Targets<o:p></o:p></span></h3>

<p class=MsoNormal><span style='color:black'>This folder contains
domain-specific models capturing information about the target environment in
which component-based application will be deployed. In this Quoter example, we
can either deploy the two components into ONE host, or into TWO different host.
We will deploy the Quoter into two different host.<o:p></o:p></span></p>

<ol start=1 type=1>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l5 level1 lfo10;tab-stops:list .5in'>In the folder <i>Targets</i>,
     insert a new &lt;&lt;Domain&gt;&gt; named &quot;Domain&quot;; double click
     to open it.<o:p></o:p></li>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l5 level1 lfo10;tab-stops:list .5in'>From the Part Browser,
     add two &lt;&lt;Node&gt;&gt; named &quot;Broker&quot; and
     &quot;Distributor&quot; respectively.<o:p></o:p></li>
</ol>

<p class=MsoNormal><span style='color:black'><br>
Now we are ready to deploy our Components to the actual physical environment.<o:p></o:p></span></p>

<div class=MsoNormal align=center style='text-align:center'><span
style='color:black'>

<hr size=2 width="100%" align=center>

</span></div>

<h3><a name=7></a><span style='color:black'>DeploymentPlan<o:p></o:p></span></h3>

<p class=MsoNormal><span style='color:black'>This folder contains a plan model
that captures information about the assignment of component to nodes.<o:p></o:p></span></p>

<ol start=1 type=1>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l7 level1 lfo11;tab-stops:list .5in'>In the folder <em>DeploymentPlan</em>,
     insert a model &lt;&lt;DeploymentPlan&gt;&gt;; name it &quot;Plan&quot;,
     click to open it<o:p></o:p></li>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
     auto;mso-list:l7 level1 lfo11;tab-stops:list .5in'>From the PartBrowser,
     add the following:<o:p></o:p></li>
 <ul type=circle>
  <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
      auto;mso-list:l7 level2 lfo11;tab-stops:list 1.0in'>Two
      &lt;&lt;CollocationGroup&gt;&gt;<o:p></o:p></li>
  <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
      auto;mso-list:l7 level2 lfo11;tab-stops:list 1.0in'>Two
      &lt;&lt;NodeReference&gt;&gt; named &quot;Node_Broker&quot; and
      &quot;Node_Distributor&quot; respectively, refering to <code><span
      style='font-size:10.0pt'>MyQuoter/Targets/Domain/Broker</span></code> and
      <code><span style='font-size:10.0pt'>MyQuoter/Targets/Domain/Distributor</span></code>
      respectively<o:p></o:p></li>
  <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;mso-margin-bottom-alt:
      auto;mso-list:l7 level2 lfo11;tab-stops:list 1.0in'>Two
      &lt;&lt;ComponentRef&gt;&gt; named &quot;StockBroker&quot; and
      &quot;StockDistributor&quot; respectively, refering to <code><span
      style='font-size:10.0pt'>MyQuoter/ComponentImplementations/StockQuoterImplementation/StockQuoter/StockBroker</span></code>
      and <code><span style='font-size:10.0pt'>MyQuoter/ComponentImplementations/StockQuoterImplementation/StockQuoter/StockDistributor</span></code>
      respectively. Note that the &lt;&lt;ComponentRef&gt;&gt; in
      DeploymentPlan is not referring to the interface, but rather the actual
      instance of the implementation.<o:p></o:p></li>
 </ul>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;margin-bottom:
     12.0pt;mso-list:l7 level1 lfo11;tab-stops:list .5in'>Switch to Connect
     Mode, connect one &lt;&lt;CollocationGroup&gt;&gt; to
     &lt;&lt;NodeReference&gt;&gt; <em>Node_Broker</em>, connect another
     &lt;&lt;CollocationGroup&gt;&gt; to &lt;&lt;NodeReference&gt;&gt; <em>Node_Distributor</em>.
     Now the model looks like the following.<o:p></o:p></li>
</ol>

<p class=MsoNormal align=center style='mso-margin-top-alt:auto;margin-bottom:
12.0pt;margin-left:.5in;text-align:center'><span style='color:black'><img
border=0 width=752 height=530 id="_x0000_i1044" src="Images/fig10.jpg"><br>
<br>
Figure 10.<o:p></o:p></span></p>

<ol start=4 type=1>
 <li class=MsoNormal style='color:black;mso-margin-top-alt:auto;margin-bottom:
     12.0pt;mso-list:l7 level1 lfo11;tab-stops:list .5in'>Now we need to
     associate &lt;&lt;ComponentRef&gt;&gt; StockBroker to the
     &lt;&lt;CollocationGroup&gt;&gt; running on the
     &lt;&lt;NodeReference&gt;&gt; Broker, and &lt;&lt;ComponentRef&gt;&gt;
     StockDistributor to the &lt;&lt;CollocationGroup&gt;&gt; running on the
     &lt;&lt;NodeReference&gt;&gt; Distributor. To do that, switch the Edit
     Mode Bar to Set Mode (<img border=0 width=32 height=32 id="_x0000_i1045"
     src="Icons/SetMode.gif">), and move the cursor to the
     &lt;&lt;CollocationGroup&gt;&gt; running on &lt;&lt;NodeReference&gt;&gt;
     Distributor, right-click on it. You will find the cursor is changed to set
     mode cursor, and only the &lt;&lt;CollocationGroup&gt;&gt; you clicked in
     is highlighted, as shown in Figure 11.<o:p></o:p></li>
</ol>

<p class=MsoNormal align=center style='margin-bottom:12.0pt;text-align:center'><span
style='color:black'><img border=0 width=672 height=505 id="_x0000_i1046"
src="Images/fig11.jpg"><!-- 01.html,v 1.3 2006/02/10 14:34:35 mxiong Exp -->&gt;<br>
<br>
Figure 11<o:p></o:p></span></p>

<p><span style='color:black'>Now move your cursor to
&lt;&lt;ComponentRef&gt;&gt;&nbsp; StockDistributor, and left-click it, so that
it looks like Figure 12.<o:p></o:p></span></p>

<p class=MsoNormal align=center style='margin-bottom:12.0pt;text-align:center'><span
style='color:black'><img border=0 width=672 height=505 id="_x0000_i1047"
src="Images/fig12.jpg">

<!doctype HTML>

&gt;<br>
<br>
Figure 12<o:p></o:p></span></p>

<p style='margin-bottom:12.0pt'><span style='color:black'>This operation
associates <em>StockDistributor</em> component to the
&lt;&lt;CollocationGroup&gt;&gt; running on <em>Distributor</em> node. To do
the same with Broker, just right-click on another
&lt;&lt;CollocationGroup&gt;&gt;, and left-click on StockBroker
&lt;&lt;CollocationGroup&gt;&gt; which is highlighted.<o:p></o:p></span></p>

<div class=MsoNormal align=center style='text-align:center'><span
style='color:black'>

<hr size=2 width="100%" align=center>

</span></div>

<p><a name=8></a><span style='color:black'>Up to this point, we are basically
done with the modeling part. Before we generate anything from this model
though, please <b>DO</b> remember to check the constraints of the model as we
mentioned earlier.<o:p></o:p></span></p>

<p><span style='color:black'>After we are done with the modeling, the
flattened_deploymentplan interpreter that comes along with PICML will help us
to generate a flattened_deploymentplan.cdp file. Please make sure you generate
this file to MyQuoter/descriptors. Note that to get the example working</span><span
style='font-family:"Courier New";color:black'>,</span><span style='color:black'>a
Node Map file should be created to map logicalnodes to NodeManager object
references,e.g:<o:p></o:p></span></p>

<pre wrap=""><span style='color:black'>DistributorNode corbaloc:iiop:localhost:30000/NodeManager<o:p></o:p></span></pre><pre><span
style='color:black'>BrokerNode<span style='mso-spacerun:yes'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>corbaloc:iiop:localhost:40000/NodeManager<o:p></o:p></span></pre><pre><span
style='color:black'><o:p>&nbsp;</o:p></span></pre><pre><span style='color:black'><o:p>&nbsp;</o:p></span></pre>

<p class=MsoNormal align=center style='text-align:center;tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
style='color:black'><a href="02.html">Previous</a><span style='mso-tab-count:
8'>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><a
href="04.html">Next</a><o:p></o:p></span></p>

<div class=MsoNormal align=center style='text-align:center;tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
style='color:black'>

<hr size=2 width="100%" align=center>

</span></div>

<address style='tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
style='color:black'><a href="mailto:ming.xiong@vanderbilt.edu">Ming Xiong<br>
</a></span><a href="mailto:abdullah.sowayan@lmco.com">Abdullah Sowayan</a></address>

<p class=MsoNormal style='tab-stops:45.8pt 91.6pt 137.4pt 183.2pt 229.0pt 274.8pt 320.6pt 366.4pt 412.2pt 458.0pt 503.8pt 549.6pt 595.4pt 641.2pt 687.0pt 732.8pt'><span
style='color:black'><o:p>&nbsp;</o:p></span></p>

<pre style='text-align:center'><o:p>&nbsp;</o:p></pre></div>

</body>

</html>
